package ${parentName}.${moduleName}.core.domain.repository;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import ${parentName}.${moduleName}.core.domain.aggregatemodel.${tableName};
import ${parentName}.${moduleName}.core.domain.aggregatemodel.Del${tableName};
import ${parentName}.${moduleName}.core.domain.aggregatemodel.Query${tableName}Page;
import ${parentName}.${moduleName}.core.domain.aggregatemodel.Query${tableName}ByOne;
import ${parentName}.${moduleName}.core.domain.aggregatemodel.Query${tableName}List;
import java.util.List;

/**
* @author ${author}
* @since ${date}
*/

public interface ${tableName}Repository {
    /**
     * 新增
     */
    ${tableName} add${tableName}(${tableName} ${"${tableName}"?uncap_first});

    /**
     * 删除
     */
    void del${tableName}(Del${tableName} del${tableName});

    /**
     * 修改
     */
    ${tableName} update${tableName}(${tableName} ${"${tableName}"?uncap_first});


    /**
     * 分页查询
     */
    Page<${tableName}> query${tableName}Page(Query${tableName}Page query${tableName}Page);

    /**
     * 单个查询
     */
    ${tableName} query${tableName}ByOne(Query${tableName}ByOne query${tableName}ByOne);

    /**
     * 列表查询
     */
    List<${tableName}> query${tableName}List(Query${tableName}List query${tableName}List);

}